package clasificador.genetico;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.AbstractMap.SimpleEntry;
import utils.Couple;
import utils.Weighted;

/* Las clases que implementen esta interfaz permitiran seleccionar,
 * de entre una poblacion previamente seleccionada, aquellas parejas
 * que son optimas para el cruzamiento.
 * 
 * Solo se consideran cruces de dos elementos.
 */
public interface PoliticaEmparejamiento<Cromosoma> {
	/* El iterador devuelto debera generar parejas de cromosomas a cruzar. */
	public Iterator<Couple<Weighted<Cromosoma>>> emparejar(ArrayList<Weighted<Cromosoma>> poblacion);
}
